# #if-else用法
# if 5>12:
#     print("5 is greater than 2")
#     print("222222")
# else:
#     print("5 is not greater than 2")
#
# #elif用法
# age=30
# if age < 18:
#     print("you are underaged")
# elif 18 <= age < 30:
#     print("you are middle-aged")
# else:
#     print("you are old")
#
# #判断闰年
# year = int(input("请输入年份："))
# if(year %4 == 0 and year % 100 != 0)or(year%400 ==0):
#     print("%d是闰年"% year)
# else:
#     print("%d不是闰年"% year)
#
#
#
# #abc比较大小
# a = int(input("请输入a:"))
# b = int(input("请输入b:"))
# c = int(input("请输入c:"))
# if a>b:
#     if a>c:
#         print("a is the largest")
#     else:
#         print("c is the largest")
# else:
#     if b>c:
#         print("b is the largest")
#     else:
#         print("c is the largest")
# #运算符
# num1 = float(input("请输入第一个数字："))
# num2 = float(input("请输入第二个数字："))
# op = input("请输入运算符：")
# if op == "+":
#     print(num1 + num2)
# elif op == "-":
#     print(num1-num2)
# elif op == "*":
#     print(num1*num2)
# elif op == "/":
#     print(num1/num2)
# else:
#     print("error")
#
# for i in range(1,10+1,2): #0-9
#     print(i, end="\t")
#
# #打印一百以内能被三整除的数字
# for i in range(1,100+1):
#      if i % 3 ==0:
#          print(i,end="\t")
# #猜数字
# #产生随机数
# from random import random, randint
# num = randint(1,100)
# while True:
#     guess = int(int(input("请输入一个数字：")))
#     if guess>num:
#         print("你猜大了")
#     elif guess<num:
#         print("你猜小了")
#     else:
#         print("猜对了")
#         break
# #逢7
# for i in range(1,100+1):
# #    if i % 7 ==0 or str(i).find('7') !=-1:
# #    if i % 7 ==0 or str(i).count('7') >0:
#     if i % 7 ==0 or '7' in str(i) !=-1:
#         print(i,end="\t")
#
# #打印菱形
# for i in range(1,11+1,2):
#     print(("*" * i).center(11))
# for i in range(9,0,-2):
#     print(("*" * i).center(11))
#
# # 打印菱形2 多层循环嵌套
# n = 6  # 可以调节这个值来改变菱形的大小
# # 上半部分
# for i in range(1, n + 1):
#     # 打印空格
#     for j in range(n - i):
#         print("_", end="")
#
#         # 打印星号
#     for k in range(1, 2 * i):#具体而言，2 * i 的计算是为了确定在第 i 行需要打印多少个星号。 2*i-1
#         print("*", end="")
#
#     print()  # 换行
#
# # 下半部分
# for i in range(n - 1, 0, -1):
#     # 打印空格
#     for j in range(n - i):
#         print(" ", end="")
#
#         # 打印星号
#     for k in range(1, 2 * i):
#         print("*", end="")
#
#     print()  # 换行
# #
# #
# # #
# # #
# # # 打印水仙花数
# # 打印所有三位数的水仙花数
# count = 0
# for i in range(100, 1000):
#     ge = i % 10
#     shi = i // 10 % 10
#     bai = i // 100
#     if ge**3 + shi**3 + bai**3 == i:
#         count += 1
#         print(i)
# print("水仙花共有" + str(count) + "个")
#
# #
# #
# # 打印100以内的质数
# # 打印 100 以内的质数
# for i in range(2, 101):  # 从 2 开始到 100
#     is_prime = True  # 假设当前数字是质数
#     for j in range(2, int(i**0.5) + 1):  # 检查从 2 到 √i 的所有数字
#         if i % j == 0:  # 如果 i 能被 j 整除，说明不是质数
#             is_prime = False
#             break  # 找到一个因子，停止检查
#     if is_prime:  # 如果是质数，就打印
#         print(i, end=" ")

#
#
# 打印斐波那契数列

n = int(input("请输入要打印的斐波那契数列的项数："))
a, b = 0, 1  # 初始化前两个斐波那契数
# 使用循环生成并打印斐波那契数列
for i in range(n):
    print(a, end=" ")  # 打印当前的斐波那契数
    a, b = b, a + b  # 更新 a 和 b 的值
    #f0=0 f1=1



# 打印九九乘法表
for i in range(1, 10):  # 外层循环，i 从 1 到 9
    for j in range(1, i + 1):  # 内层循环，j 从 1 到 i
        print(f"{j} * {i} = {j * i}", end="\t")  # 打印当前乘法结果，使用制表符对齐
    print()  # 每完成一行后换行
#
#
# 打印一百以内的完数
# 打印100以内的完数
for num in range(1, 101):  # 遍历从1到100的整数
    sum_of_divisors = 0  # 初始化真因子的和
    # 找到 num 的真因子，并计算它们的和
    for i in range(1, num):
        if num % i == 0:  # 如果 i 是 num 的因子
            sum_of_divisors += i  # 累加真因子
    # 判断 num 是否为完数
    if sum_of_divisors == num:
        print(num)  # 输出完数


    print("好好学习 天天向上")
    print("好好学习 天天向上")
    print("好好学习 天天向上")